@echo off
:: 关闭命令行的默认回显功能，使输出更简洁（仅显示执行结果，不重复显示命令本身）

:: 检查当前目录下是否存在 "build" 文件夹
if not exist build (
    :: 如果不存在，则创建 "build" 文件夹（用于存放 CMake 生成的中间文件和构建产物）
    mkdir build
)

:: 进入刚刚创建或已存在的 "build" 文件夹（后续操作将在该目录下执行）
cd build

:: 使用 CMake 生成 Visual Studio 2022 项目文件
:: -G "Visual Studio 17 2022"：指定生成器为 Visual Studio 2022
:: -A x64：指定目标架构为 64 位（避免默认生成 32 位项目）
:: ..：表示 CMakeLists.txt 所在的路径（当前 build 文件夹的父目录，即项目根目录）
cmake -G "Visual Studio 17 2022" -A x64 ..

:: 使用 CMake 调用构建工具编译项目
:: --build .：表示编译当前目录（build 文件夹）下的项目
:: --config=Release：指定构建类型为 Release（生成优化后的发布版本）
cmake --build . --config=Release

:: 编译完成后，从 build 文件夹返回到项目根目录
cd ..